package com.closer.server.biz.images.service;

import com.closer.server.biz.images.dto.ImageVO;
import com.closer.server.biz.images.dto.SearchRequest;
import com.closer.server.biz.images.entity.Images;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;

import java.io.InputStream;

/**
 * 图片资源 服务层。
 *
 * @author closer
 */
public interface ImagesService extends IService<Images> {

    /**
     * 上传图片
     * @param type 图片类型
     * @param file 图片文件
     * @return 图片id
     */
    long upload( String type, InputStream file);


    /**
     * 启用图片
     * @param id 图片id
     */
    void enable(Long id);

    /**
     * 禁用图片
     * @param id 图片id
     */
    void disable(Long id);

    /**
     * 删除图片
     * @param id 图片id
     */
    void delete(Long id);

    /**
     * 搜索图片
     * @param params 查询参数
     * @return 搜索结果
     */
    Page<ImageVO> search(SearchRequest params);
}


